home *** CD-ROM | disk | FTP | other *** search
-
-
-
- qmail-header(5) qmail-header(5)
-
-
- NNAAMMEE
- qmail-header - format of a mail message
-
- OOVVEERRVVIIEEWW
- At the top of every mail message is a highly structured
- hheeaaddeerr. Many programs expect the header to carry certain
- information, as described below. The main function of
- qqmmaaiill--iinnjjeecctt is to make sure that each outgoing message
- has an appropriate header.
-
- For more detailed information, see RFC 822 and RFC 1123.
-
- MMEESSSSAAGGEE SSTTRRUUCCTTUURREE
- A message contains a series of _h_e_a_d_e_r _f_i_e_l_d_s, a blank
- line, and a _b_o_d_y:
-
- Received: (qmail-queue invoked by uid 666);
- 30 Jul 1996 11:54:54 -0000
- From: djb@silverton.berkeley.edu (D. J. Bernstein)
- To: fred@silverton.berkeley.edu
- Date: 30 Jul 1996 11:54:54 -0000
- Subject: Go, Bears!
-
- I've got money on this one. How about you?
-
- ---Dan (this is the third line of the body)
-
- Each header field has a _n_a_m_e, a colon, some _c_o_n_t_e_n_t_s, and
- a newline:
-
- Subject: Go, Bears!
-
- The field contents may be folded across several lines.
- Each line past the first must begin with a space or tab:
-
- Received: (qmail-queue invoked by uid 666);
- 30 Jul 1996 11:54:54 -0000
-
- The field name must not contain spaces, tabs, or colons.
- Also, an empty field name is illegal. qqmmaaiill--iinnjjeecctt does
- not allow field names with unprintable characters.
-
- Case is irrelevant in field names: ssuubbjjeecctt and SSUUBBJJEECCTT and
- SSuuBBjjEEccTT have the same meaning.
-
- AADDDDRREESSSS LLIISSTTSS
- Certain fields, such as TToo, contain _a_d_d_r_e_s_s _l_i_s_t_s.
-
- An address list contains some number of _a_d_d_r_e_s_s_e_s or
- _a_d_d_r_e_s_s _g_r_o_u_p_s, separated by commas:
-
- a@b, c@d (Somebody), A Person <e@f>,
- random group: g@h, i@j;, k@l
-
-
-
-
- 1
-
-
-
-
-
- qmail-header(5) qmail-header(5)
-
-
- An _a_d_d_r_e_s_s _g_r_o_u_p has some text, a colon, a list of
- addresses, and a semicolon:
-
- random group: g@h, i@j;
-
- An address can appear in several forms. The most common
- form is _b_o_x_@_h_o_s_t.
-
- Every address must include a host name. If qqmmaaiill--iinnjjeecctt
- sees a lone box name it adds the _d_e_f_a_u_l_t _h_o_s_t _n_a_m_e.
-
- All host names should be fully qualified. qqmmaaiill--iinnjjeecctt
- appends the _d_e_f_a_u_l_t _d_o_m_a_i_n _n_a_m_e to any name without dots:
-
- djb@silverton -> djb@silverton.berkeley.edu
-
- It appends the _p_l_u_s _d_o_m_a_i_n _n_a_m_e to any name that ends with
- a plus sign:
-
- eric@mammoth.cs+ -> eric@mammoth.cs.berkeley.edu
-
- A host name may be a dotted-decimal address:
-
- djb@[128.32.183.163]
-
- RFC 822 allows mailbox names inside angle brackets to
- include _s_o_u_r_c_e _r_o_u_t_e_s, but qqmmaaiill--iinnjjeecctt strips all source
- routes out of addresses.
-
- SSEENNDDEERR AADDDDRREESSSSEESS
- qqmmaaiill--iinnjjeecctt looks for sender address lists in the follow-
- ing fields: SSeennddeerr, FFrroomm, RReeppllyy--TToo, RReettuurrnn--PPaatthh, RReettuurrnn--
- RReecceeiipptt--TToo, EErrrroorrss--TToo, RReesseenntt--SSeennddeerr, RReesseenntt--FFrroomm, RReesseenntt--
- RReeppllyy--TToo.
-
- If there is no FFrroomm field, qqmmaaiill--iinnjjeecctt adds a new FFrroomm
- field with the name of the user invoking qqmmaaiill--iinnjjeecctt..
-
- RFC 822 requires that certain sender fields contain only a
- single address, but qqmmaaiill--iinnjjeecctt does not enforce this
- restriction.
-
- RREECCIIPPIIEENNTT AADDDDRREESSSSEESS
- qqmmaaiill--iinnjjeecctt looks for recipient address lists in the fol-
- lowing fields: TToo, CCcc, BBcccc, AAppppaarreennttllyy--TToo, RReesseenntt--TToo,
- RReesseenntt--CCcc, RReesseenntt--BBcccc.
-
- Every message must contain at least one TToo or CCcc or BBcccc.
- qqmmaaiill--iinnjjeecctt deletes any BBcccc field. If there is no TToo or
- CCcc field, qqmmaaiill--iinnjjeecctt adds a line
-
- Cc: recipient list not shown: ;
-
- This complies with RFC 822; it also works around some
-
-
-
- 2
-
-
-
-
-
- qmail-header(5) qmail-header(5)
-
-
- strange sseennddmmaaiill behavior, in case the message is passed
- through sseennddmmaaiill on another machine.
-
- SSTTAAMMPPSS
- Every message must contain a DDaattee field, with the date in
- a strict format defined by RFC 822. If necessary qqmmaaiill--
- iinnjjeecctt creates a new DDaattee field with the current date (in
- GMT).
-
- Every message should contain a MMeessssaaggee--IIdd field. The
- field contents are a unique worldwide identifier for this
- message. If necessary qqmmaaiill--iinnjjeecctt creates a new MMeessssaaggee--
- IIdd field.
-
- Another important field is RReecceeiivveedd. Every time the mes-
- sage is sent from one system to another, a new RReecceeiivveedd
- field is added to the top of the message. qqmmaaiill--iinnjjeecctt
- does not create any RReecceeiivveedd fields.
-
- RREESSEENNTT MMEESSSSAAGGEESS
- A message is _f_o_r_w_a_r_d_e_d if it contains any of the following
- fields: RReesseenntt--SSeennddeerr, RReesseenntt--FFrroomm, RReesseenntt--RReeppllyy--TToo,
- RReesseenntt--TToo, RReesseenntt--CCcc, RReesseenntt--BBcccc, RReesseenntt--DDaattee, RReesseenntt--MMeess--
- ssaaggee--IIDD.
-
- If a message is forwarded, qqmmaaiill--iinnjjeecctt changes its behav-
- ior as follows.
-
- It deletes any RReesseenntt--BBcccc field (as well as any BBcccc
- field); if there are no RReesseenntt--TToo or RReesseenntt--CCcc fields,
- qqmmaaiill--iinnjjeecctt adds an appropriate RReesseenntt--CCcc line. It does
- _n_o_t add a CCcc line, even if neither TToo nor CCcc is present.
-
- If there is no RReesseenntt--FFrroomm field, qqmmaaiill--iinnjjeecctt adds a new
- RReesseenntt--FFrroomm field. It does _n_o_t add a new FFrroomm field.
-
- qqmmaaiill--iinnjjeecctt adds RReesseenntt--DDaattee if one is not already pre-
- sent; same for RReesseenntt--MMeessssaaggee--IIdd. It does _n_o_t add new
- DDaattee or MMeessssaaggee--IIdd fields.
-
- OOTTHHEERR FFEEAATTUURREESS
- Addresses are separated by commas, not spaces. When
- qqmmaaiill--iinnjjeecctt sees an illegal space, it inserts a comma:
-
- djb fred -> djb, fred
-
- qqmmaaiill--iinnjjeecctt removes all RReettuurrnn--PPaatthh header fields.
-
- qqmmaaiill--iinnjjeecctt also removes any CCoonntteenntt--LLeennggtthh fields.
-
- SSEEEE AALLSSOO
- addresses(5), envelopes(5), qmail-inject(8)
-
-
-
-
-
- 3
-
-
-